﻿
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Power.Models
{
    /// <summary>
    /// 视频列实例
    /// </summary>
    public class VideoEntity:BaseModel
    {
        /// <summary>
        /// 主键
        /// </summary>
        private string _id;
        public string Id
        {
            get { return _id; }
            set { _id = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 视频名称
        /// </summary>
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 视频的图片路径
        /// </summary>
        private string _pictrue;
        public string Pictrue
        {
            get { return _pictrue; }
            set { _pictrue = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 视频路径
        /// </summary>
        private string _video;
        public string Video
        {
            get { return _video; }
            set { _video = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 视频处理状态
        /// </summary>
        public const int StatusRaw = 0;///未处理
        public const int StatusDetecting = 1;///正在进行AI检测
        public const int StatusDetected = 2;///已经进行AI检测
        public const int StatusChecked = 3;///已经人工复核
        private int _status;
        public int Status
        {
            get { return _status; }
            set { _status = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 检测进度，只有在正在进行AI检测时有效
        /// </summary>
        private int _progress = 0;
        public int Progress
        {
            get { return _progress; }
            set { _progress = value; RaisePropertyChanged(); }
        }

        /// <summary>
        /// 起始井信息
        /// </summary>
        private WellEntity _beginWell;
        public WellEntity BeginWell
        {
            get
            {
                return _beginWell;
            }
            set
            {
                _beginWell = value;
            }
        }

        /// <summary>
        /// 终止井信息
        /// </summary>
        private WellEntity _endWell;
        public WellEntity EndWell
        {
            get
            {
                return _endWell;
            }
            set
            {
                _endWell = value;
            }
        }

        /// <summary>
        /// 管段信息
        /// </summary>
        private PipEntity _pip;
        public PipEntity Pip
        {
            get
            {
                return _pip;
            }
            set
            {
                _pip = value;
            }
        }

        /// <summary>
        /// 检测信息
        /// </summary>
        private DetectEntity _detect;
        public DetectEntity Detect
        {
            get
            {
                return _detect;
            }
            set
            {
                _detect = value;
            }
        }

        

        private string _progressDesc;
        private string _progressType;
        private string _statusDesc;
        private string _borderWidth;
        private string _borderWidth2;
        private string _pathFill;
        private bool _isChecked;
        public bool IsChecked { get => _isChecked; set { _isChecked = value; RaisePropertyChanged(); } }

        
        public string ProgressDesc { get => _progressDesc; set { _progressDesc = value; RaisePropertyChanged(); } }
        public string ProgressType { get => _progressType; set { _progressType = value; RaisePropertyChanged(); } }
        public string StatusDesc { get => _statusDesc; set { _statusDesc = value; RaisePropertyChanged(); } }

        public string BorderWidth { get => _borderWidth; set { _borderWidth = value; RaisePropertyChanged(); } }
        public string BorderWidth2 { get => _borderWidth2; set { _borderWidth2 = value; RaisePropertyChanged(); } }
        public string PathFill { get => _pathFill; set { _pathFill = value; RaisePropertyChanged(); } }
    }
}
